package com.dawn.module.hospital.controller.app.chs.vo;

import com.dawn.module.hospital.controller.app.base.vo.ReqVO;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.ToString;

import javax.validation.constraints.NotBlank;

/**
 * @description:
 * @author: cnsu-cmh
 * @time: 2024/8/8 18:17
 */
@Schema(description = "医保移动支付-下单 APP - Request VO")
@Data
@ToString(callSuper = true)
public class ChsOrderUnifiedReqVO extends ReqVO {

    @NotBlank(message = "应用类型不能为空")
    @Schema(description = "应用类型",example="WX")
    private String appType;

    @NotBlank(message = "用户标识userId不能为空")
    @Schema(description = "用户标识")
    private String userId;

    @NotBlank(message = "订单编号不能为空")
    @Schema(description = "订单编号")
    private String orderNumber;
//
//    @NotBlank(message = "病人ID不能为空")
//    @Schema(description = "病人ID")
//    private String patientId;

    @NotBlank(message = "订单类型不能为空")
    @Schema(description = "订单类型 REG、RECIPE、PRE_PAYMENT")
    private String orderType;

    @NotBlank(message = "订单金额不能为空")
    @Schema(description = "订单金额")
    private String totalFee;

    @NotBlank(message = "现金金额不能为空")
    @Schema(description = "现金金额")
    private String cashFee;

    @NotBlank(message = "个账金额不能为空")
    @Schema(description = "个账金额")
    private String psnAcctPay;
    @NotBlank(message = "基金金额不能为空")
    @Schema(description = "基金金额")
    private String fundPay;

    @NotBlank(message = "医疗订单号不能为空")
    @Schema(description = "医疗订单号")
    private String medOrgOrd;


    @NotBlank(message = "支付订单号不能为空")
    @Schema(description = "支付订单号")
    private String payOrdId;

    @NotBlank(message = "支付授权号不能为空")
    @Schema(description = "支付授权号")
    private String payAuthNo;

    @NotBlank(message = "经纬度不能为空")
    @Schema(description = "经纬度")
    private String uldLatlnt;

    @NotBlank(message = "身份证号不能为空")
    @Schema(description = "身份证号")
    private String idNo;

    @NotBlank(message = "姓名不能为空")
    @Schema(description = "姓名")
    private String username;

    private String medicalCardInstId;

    private String medicalCardId;

    private String clinicNo;
    private String billNo;
    private String billNos;

}
